package org.jeecg.modules.bobo.cms.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonView;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @Description: 文章列表
 * @Author: jeecg-boot
 * @Date:   2020-12-22
 * @Version: V1.0
 */
@Data
@TableName("lb_portal_post")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="lb_portal_post对象", description="文章列表")
public class LbPortalPost implements Serializable {
    private static final long serialVersionUID = 1L;
	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;
	/**父级id*/
	@Excel(name = "父级id", width = 15)
    @ApiModelProperty(value = "父级id")
    @Dict(dictTable = "lb_portal_category", dicText = "name", dicCode = "id")
    private String parentId;
	/**类型,1:文章;2:页面*/
	@Excel(name = "类型,1:文章;2:页面", width = 15)
    @ApiModelProperty(value = "类型,1:文章;2:页面")
    private String postType;
	/**内容格式;1:html;2:md*/
	@Excel(name = "内容格式;1:html;2:md", width = 15)
    @ApiModelProperty(value = "内容格式;1:html;2:md")
    private String postFormat;
	/**发表者用户id*/
    @ApiModelProperty(value = "发表者用户id")
    @Excel(name = "回复人", width = 15, dictTable = "sys_user", dicText = "realname", dicCode = "username")
    @Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username")
    private String createBy;
	/**状态;1:已发布;0:未发布;*/
	@Excel(name = "状态;1:已发布;0:未发布;", width = 15, dicCode = "post_status")
	@Dict(dicCode = "post_status")
    @ApiModelProperty(value = "状态;1:已发布;0:未发布;")
    private String postStatus;
	/**评论状态;1:允许;0:不允许*/
	@Excel(name = "评论状态;1:允许;0:不允许", width = 15, dicCode = "comment_status")
	@Dict(dicCode = "comment_status")
    @ApiModelProperty(value = "评论状态;1:允许;0:不允许")
    private String commentStatus;
	/**是否置顶;1:置顶;0:不置顶*/
	@Excel(name = "是否置顶;1:置顶;0:不置顶", width = 15, dicCode = "is_top")
	@Dict(dicCode = "is_top")
    @ApiModelProperty(value = "是否置顶;1:置顶;0:不置顶")
    private String isTop;
	/**是否推荐;1:推荐;0:不推荐*/
	@Excel(name = "是否推荐;1:推荐;0:不推荐", width = 15, dicCode = "recommended")
	@Dict(dicCode = "recommended")
    @ApiModelProperty(value = "是否推荐;1:推荐;0:不推荐")
    private String recommended;
	/**查看数*/
	@Excel(name = "查看数", width = 15)
    @ApiModelProperty(value = "查看数")
    private Integer postHits;
	/**收藏数*/
	@Excel(name = "收藏数", width = 15)
    @ApiModelProperty(value = "收藏数")
    private Integer postFavorites;
	/**点赞数*/
	@Excel(name = "点赞数", width = 15)
    @ApiModelProperty(value = "点赞数")
    private Integer postLike;
	/**评论数*/
	@Excel(name = "评论数", width = 15)
    @ApiModelProperty(value = "评论数")
    private Integer commentCount;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
    /**更新日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**发布时间*/
	@Excel(name = "发布时间", width = 15)
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "发布时间")
    private java.util.Date publishedTime;
	/**删除时间*/
	@Excel(name = "删除时间", width = 15)
    @ApiModelProperty(value = "删除时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private java.util.Date deleteTime;
	/**post标题*/
	@Excel(name = "post标题", width = 15)
    @ApiModelProperty(value = "post标题")
    private String postTitle;
	/**seo keywords*/
	@Excel(name = "seo keywords", width = 15)
    @ApiModelProperty(value = "seo keywords")
    private String postKeywords;
	/**post摘要*/
	@Excel(name = "post摘要", width = 15)
    @ApiModelProperty(value = "post摘要")
    private String postExcerpt;
	/**转载文章的来源*/
	@Excel(name = "转载文章的来源", width = 15)
    @ApiModelProperty(value = "转载文章的来源")
    private String postSource;
	/**缩略图*/
	@Excel(name = "缩略图", width = 15)
    @ApiModelProperty(value = "缩略图")
    private String thumbnail;
	/**文章内容*/
	@Excel(name = "文章内容", width = 15)
    @ApiModelProperty(value = "文章内容")
    private String postContent;
	/**处理过的文章内容*/
	@Excel(name = "处理过的文章内容", width = 15)
    @ApiModelProperty(value = "处理过的文章内容")
    private String postContentFiltered;
	/**扩展属性,如缩略图;格式为json*/
	@Excel(name = "扩展属性,如缩略图;格式为json", width = 15)
    @ApiModelProperty(value = "扩展属性,如缩略图;格式为json")
    private String more;

}
